package cn.iocoder.yudao.module.member.service.cardsecurity;

import cn.iocoder.yudao.framework.common.pojo.PageResult;
import cn.iocoder.yudao.module.member.controller.app.cardsecurity.vo.CardSecurityExchengeVo;
import cn.iocoder.yudao.module.member.controller.app.cardsecurity.vo.CardSecurityQueryVo;
import cn.iocoder.yudao.module.member.controller.app.cardsecurity.vo.CardSecurityVo;
import cn.iocoder.yudao.module.member.controller.app.cardsecurity.vo.CertCheckVo;
import cn.iocoder.yudao.module.member.dal.dataobject.cardsecurity.CardSecurityDo;
import cn.iocoder.yudao.module.member.dal.dataobject.order.MemberCertificateOrderDo;

import java.util.List;

public interface CardSecurityService {
    void create(CardSecurityVo cardSecurityVo);

    MemberCertificateOrderDo exchange(CardSecurityExchengeVo cardSecurityExchengeVo);

    PageResult<CardSecurityDo> page(CardSecurityQueryVo pageVO);

    void enable(List<Long> ids);

    void disable(List<Long> ids);


    void delete(List<Long> ids);

    Long count();

    List<String> getCardList();

    Boolean dropSignature(CardSecurityExchengeVo cardSecurityExchengeVo) ;

    /**
     * 设备订单检测
     * @param id
     * @return
     */
    CertCheckVo certCheck(Long id) throws Exception;

}
